import os
from natsort import natsorted
import re

# 获取目标文件夹下的所有文件名
folder_path = r"F:\home\catalog\uploadPath\upload\勇罕 2022年 第 4 期"
file_names = os.listdir(folder_path)

# 对文件名进行自然排序
sorted_file_names = natsorted(file_names)

# 定义一个正则表达式来提取数字部分
pattern = re.compile(r'\d+')

for i, old_file_name in enumerate(sorted_file_names, start=1):
    # 提取文件名中的数字部分
    match = pattern.search(old_file_name)
    if match:
        number_part = match.group()
        
        # 构建新的文件名
        new_file_name = f"page{number_part}.png"
        
        # 构建文件的完整路径
        old_file_path = os.path.join(folder_path, old_file_name)
        new_file_path = os.path.join(folder_path, new_file_name)
        
        # 重命名文件
        os.rename(old_file_path, new_file_path)
        
        print(f"文件已从 {old_file_name} 重命名为 {new_file_name}")
